//package a2023;
//
///**
// * @author lenovo
// * @date 2023/3/28
// */
//public class demo {
//    public static void main(String[] args) {
//        var s = """
//                <html><body><p>Hello, world</p></body></html>
//                """;
//
//        int i = switch (s) {
//            case "1":
//                yield 1;
//            case "2":
//                yield 2;
//            default: {
//                int len = 0;
//                yield len;
//            }
//        };
//        System.out.println(i);
//        Person person = new Person("John", "John");
//        System.out.println(person);
//        CarImpl car = new CarImpl();
//        car.setName("John");
//        System.out.println(car.getName());
//        TruckImpl truck = new TruckImpl();
//        truck.setAge("2023");
//        System.out.println(truck.getAge());
//
//
////        if (car instanceof CarImpl cat) {
////            cat.setName("John");
////        } else if (car instanceof TruckImpl dog) {
////            dog.setAge("17");
////        }
//
////        if (animal instanceof Cat) {
////            Cat cat = (Cat) animal;
////            cat.miaow();
////        } else if (animal instanceof Dog) {
////            Dog dog = (Dog) animal;
////            dog.bark();
////        }
//
//
//    }
//
//    record Person(String firstName, String lastName) {
//    }
//
//    private static abstract sealed class Vehicle permits Car, Truck {
//    }
////    public sealed interface Service permits Car, Truck {}
//
//
//    public static sealed class Car extends Vehicle {
//        public String name;
//
//        public String getName() {
//            return name;
//        }
//
//        public void setName(String name) {
//            this.name = name;
//        }
//    }
//
//    public static final class CarImpl extends Car {
//        @Override
//        public void setName(String name) {
//            super.setName("a");
//        }
//    }
//
//
//    public static sealed class Truck extends Vehicle {
//        public String age;
//
//        public String getAge() {
//            return age;
//        }
//
//        public void setAge(String age) {
//            this.age = age;
//        }
//    }
//
//
//    public static final class TruckImpl extends Truck {
//        @Override
//        public void setAge(String age) {
//            super.setAge("17");
//        }
//    }
//
//
//    static String formatterPatternSwitch(Object o) {
//        return switch (o) {
//            case Integer i -> String.format("int %d", i);
//            case Long l -> String.format("long %d", l);
//            case Double d -> String.format("double %f", d);
//            case String s -> String.format("String %s", s);
//            default -> o.toString();
//        };
//    }
//
//    static String formatter(Object o) {
//        String formatted = "unknown";
//        if (o instanceof Integer i) {
//            formatted = String.format("int %d", i);
//        } else if (o instanceof Long l) {
//            formatted = String.format("long %d", l);
//        } else if (o instanceof Double d) {
//            formatted = String.format("double %f", d);
//        } else if (o instanceof String s) {
//            formatted = String.format("String %s", s);
//        }
//        return formatted;
//    }
//
//
//}
